يتم استخدام الكلمة الأساسية ORDER BY لفرز مجموعة النتائج بترتيب تصاعدي أو تنازلي.
يقوم SQL ORDER BY بفرز السجلات بترتيب تصاعدي بشكل افتراضي. لفرز السجلات بترتيب تنازلي، استخدم الكلمة الأساسية الاختيارية DESCTbl_.
SELECT column1, column2, ...
FROM table_name
ORDER BY column1, column2, ... ASC|DESC
ما يلي هو نموذج من جدول "العملاء" لقاعدة البيانات "Northwind":
CustomerID | CustomerName | ContactName | Address | City | PostalCode | Country |
---|---|---|---|---|---|---|
1 | Alfreds Futterkiste | Maria Anders | Obere Str. 57 | Berlin | 12209 | Germany |
2 | Ana Trujillo Emparedados y helados | Ana Trujillo | Avda. de la Constitución 2222 | México D.F. | 5021 | Mexico |
3 | Antonio Moreno Taquería | Antonio Moreno | Mataderos 2312 | México D.F. | 5023 | Mexico |
4 | Around the Horn | Thomas Hardy | 120 Hanover Sq. | London | WA1 1DP | UK |
5 | Berglunds snabbköp | Christina Berglund | Berguvsvägen 8 | Luleå | S-958 22 | Sweden |
تحدد عبارة SQL التالية جميع العملاء من جدول "العملاء"، مرتبة حسب عمود "Country" ("البلد"):
Run SQLSELECT * FROM Customers
ORDER BY Country
تحدد عبارة SQL التالية جميع العملاء من جدول "العملاء"، ويتم فرزهم بترتيب تنازلي (تنازليًا) حسب عمود "Country" ("البلد"):
Run SQLSELECT * FROM Customers
ORDER BY Country DESC
تحدد عبارة SQL التالية جميع العملاء من جدول العملاء، ويتم فرزهم حسب الأعمدة "Country" و"CustomerName" ("اسم العميل"). وهذا يعني أنه سيتم ترتيبها حسب البلد، ولكن إذا كانت بعض الصفوف لها نفس البلد، فسيتم ترتيبها حسب اسم العميل:
Run SQLSELECT * FROM Customers
ORDER BY Country, CustomerName
تحدد عبارة SQL التالية جميع العملاء من جدول "العملاء"، ويتم فرزهم بترتيب تصاعدي حسب العمود "Country" وبترتيب تنازلي حسب العمود "CustomerName":
Run SQLSELECT * FROM Customers
ORDER BY Country ASC, CustomerName DESC